package com.itlong.cloud.sdk.dao;


import com.itlong.cloud.POJO.VO.sdk.old.SDKAppOldUserBasicsInfoVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
* <desc>
*    旧版SDK_APP用户数据访问接口.
* </desc>
*
* @createDate 2017-11-08
*/
@Mapper
@Repository
public interface ISDKAppOldUserDao {

    /**
    * <desc>
    *    获取SDK APP用户基础信息.
    * </desc>
    *
    * @param phoneNo 手机号
    * @return 手机APP SDK用户数据传输对象
    * @author LewisLouis
    * @createDate 2017-11-08
    */
    SDKAppOldUserBasicsInfoVO getSDKAppUserBasicInfo(@Param("phoneNo")String phoneNo);


    /**
     * <desc>
     *    根据应用接入凭证,获取应用接入凭证.
     * </desc>
     *
     * @param appId 应用接入凭证
     * @return 应用接入凭证
     * @author LewisLouis
     * @createDate 2017-11-08
     */
    String getAppSecretByAppId(@Param("appId")String appId);

   /**
   * <desc>
   *    根据应用接入凭证,获取相关的项目ID信息.
   * </desc>
   *
   * @param appId 应用接入凭证
   * @return appId下关联的项目Id列表
   * @author LewisLouis
   * @createDate 2017-11-08
   */
   List<String> getProjectInfosByAppId(@Param("appId")String appId);


    /**
     * <desc>
     *    根据手机号,获取相关的项目ID信息.
     * </desc>
     *
     * @param phoneNo 手机号
     * @return phoneNo下关联的项目Id列表
     * @author LewisLouis
     * @createDate 2017-11-08
     */
   List<String> getProjectInfosByPhoneNo(@Param("phoneNo")String phoneNo);


   /**
   * <desc>
   *    获取指定用户的所在房间的其中一个业主的电话号码
   * </desc>
   *
   * @param userId
   * @return 业主电话号码
   * @author LewisLouis
   * @createDate 2017-11-15
   */
   String getOneParentPhoneNoByUserId(@Param("userId")String userId);


   /**
   * <desc>
   *    获取用户指定项目中的一卡通软卡号（系统编号）
   * </desc>
   *
   * @param userId 用户Id
    * @param projectId 项目Id
   * @return 一卡通软卡号（系统编号）.
   * @author LewisLouis
   * @createDate 2017-11-16
   */
   String getUserCardNo(@Param("userId")String userId,@Param("projectId")String projectId);


}
